public class Constants 
{

        // commandline processing
        static final int ARG_PID_PORT = 0;
        static final int ARG_PEER_TYPE = 1;
        static final int ARG_BYZ = 2;
        static final int ARG_PEER_TIMEOUT = 3;
        static final int ARG_OTHER_PEERS = 4;

        static int NUM_PROCESSES=0;
//      static final int ARG_ = ;
//      static final int ARG_ = ;
        
        // State machine
        static final int EXIT_MACH = 0;
        static final int CONTINUE_PROCESS = 1;
        static final int VIEW_CHANGE = 2;
        static final int REPLY_GOT = 3;
        
        // PBFT
        static final int FAULT_TOL = 1;
        
        static final int DEAD_PROCESS = 0;
        static final int TOT_SEQNUM = 999;
        // PBFT Roles
        static final String CLIENT  = "client";
        static final String PRIMARY  = "primary";
        static final String BACKUP  = "backup";
        static final String PEER  = "peer";
        static final String BYZ ="b";

        //Misc
        static final String EMPTY_STR = "";
        static final int MINUS_ONE = -1;
        static final int ZERO = 0;
        
        // Key generation constants
        static final String randomAlgo = "SHA1PRNG";
        static final String keyAlgo = "DSA";
        static final String provider = "SUN";
        static final String signAlgo = "SHA1withDSA";
        static final int SEED_SIZE = 256;
        static final int KEY_SIZE = 1024; 

        // PBFT Message types
        static final String REQUEST = "REQUEST";
        static final String REPLY = "REPLY";
        static final String PREPREPARE = "PREPREPARE";
        static final String PREPARE = "PREPARE";
        static final String COMMIT = "COMMIT";
        static final String NEWVIEW = "NEWVIEW";
        static final String VIEWCHANGE = "VIEWCHANGE";
        static final String CHECKPOINT = "CHECKPOINT";
        static final String B_REQUEST = "REQ";
        static final String WATERMARK = "WM";
        static final String HIGHVIEW = "HV";
        static final String SOME = "SOME";

        static final int INIT_WATERMARK = 10;
        static final int CHECKPOINT_INT = 2;
        
        // Payload size
        static final  int PAYLOAD_SIZE = 3500;
        static final  int SIG_SIZE = 2000;
		static final String YES = "Y";
                
        
}

